The invention pertains to computer graphical user interface software and, particularly, to the automated recognition of objects presented by such interfaces. The invention has application (by way of non-limiting example) in training aids, accessibility aids, and quality assurance for stand-alone software applications, as well as for Internet- and other computer network-based software applications.
Though the computer was invented over forty years ago, use of the ubiquitous device remains a challenge for most people. Bound paper manuals gave way to online help as the computer went mainstream in the early 1980's. Software publishers have since struggled to make context-sensitive help screens that are comprehensive yet simple, thereby meeting the demands of novices and seasoned users alike.
On another front, software publishers must continually check their releases to assure that program displays are complete and consistent, particularly, where user input or response is required. Only through such quality assurance can the publishers be confident that their software will be understood by users.
Responding to the needs of sight-impaired users presents a host of additional problems. Basic program screens and help displays may need to be magnified, visually revamped or played in audio. The size of the quality assurance task may, consequently, double.
These problems are further compounded by the decreased use of stand-alone applications and the corresponding increased reliance on remote applications that “execute” via users' web browsers. Solutions to many of the aforementioned problems applicable to local applications often prove inapplicable to remotely executed ones.
An object of this invention is to provide improved methods and apparatus for use of graphical user interfaces.
A more particular object is to provide such methods and apparatus as can be used with software training aids, accessibility aids, and quality assurance for Internet- and other computer network-based software applications, as well as for stand-alone local software applications.
A still further object is to provide such methods and apparatus as can be used with software applications that utilize HTML-based and other markup language-based graphical user interfaces.
A related object is to provide such methods as can be readily implemented at low-cost, and without consumption of undue processor or memory resources and with adequate performance.